<?php

require_once '../vendor/autoload.php';
require_once '../utils/common.php';

try {
    $redis = get_redis();
} catch (RedisException $e) {
    exit('redis 连接失败: ' . $e->getMessage());
}

// 期望的错误率: 0.0001 该值必须介于0和1之间。该值越小，BloomFilter的内存占用量越大，CPU使用率越高
// 初始容量 1000 布隆过滤器的初始容量，即期望添加到布隆过滤器中的元素的个数。当实际添加的元素个数超过该值时，布隆过滤器将进行自动的扩容，该过程会导致性能有所下降，下降的程度是随着元素个数的指数级增长而线性下降
$redis->rawCommand('bf.reserve', 'bloom', 0.0001, 1000);

for ($i = 0; $i < 2000; $i++) {
    $redis->rawCommand('bf.add', 'bloom', $i);
}